The present invention relates in general to digital processing and more specifically to a data storage system using hierarchical interconnection.
Typically, in computing devices, data storage systems consist of storage devices such as, hard disk drives, floppy drives, tape drives, compact disks, and the like. An increase in the amount and complexity of these applications has resulted in a proportional increase in the demand for larger storage capacities. Consequently, the production of high capacity storage devices has increased in the past few years. However, these storage devices with large storage capacities also demand high reliability and reasonably high data transfer rates. Moreover, the storage capacity of a single storage device cannot be increased beyond a certain limit. Hence, various data storage system configurations and topologies using multiple storage devices are commonly used to meet the growing demand for increased storage capacity.
A configuration of the data storage system to meet the growing demand involves the use of multiple smaller storage devices. Such a configuration permits redundancy of stored data. Redundancy ensures data integrity in case of device failures. In many such data storage systems, recovery from common failures can be automated within the data storage system itself using data redundancy and parity generation with the help of a central controller. However, such data redundancy schemes may be an overhead to the data storage system. These data storage systems are typically referred to as Redundant Array of Inexpensive/Independent Disks (RAID). The 1988 publication by David A. Patterson, et al., from University of California at Berkeley, titled ‘A Case for Redundant Arrays of Inexpensive Disks (RAID)’, describes the fundamental concepts of the RAID technology.
There are several issues associated with high-capacity storage systems. As the number of drives increases, complexity of logic for switching between drives and the delays involved in parity computation increase exponentially, thereby reducing the system performance in terms of disk input/output. An increase in the number of drives also requires an efficient interconnect scheme for movement of data and control signals between the controller and the drives. Furthermore, disk-based storage systems, having a large number of drives, consume more power than tape based systems of equal storage capacity. This is because tape drives can support a large number of removable cartridges in a single automated library. Therefore, storage on multiple disk drives consumes more power than the equivalent tape drive system. In addition, as the number of powered drives increases, the probability of failure of a disk drive also increases. Therefore, it is desirable that data integrity and disk reliability be maintained.